<?php
class View {
    /**
     * Loads view parser that loads template file.
     * @param string $filename
     */
    static function factory( $filename ) {
        $parser = ucfirst( strtolower( Config::get( 'view_parser', 'config' ) ) );
        $parser_path = PARSERS_PATH . $parser . '.parser' . PHP_EX;
        if( file_exists( $parser_path ) ) {
            include $parser_path;
            $parser .= '_Parser';
            $parser = new $parser( $filename );
            if( $parser instanceof Parser ) {
                return $parser;
            }else
                throw new FrameException( 'Parser widoku o nazwie ' . $parser . ' nie jest poprawny' );
        }else 
            throw new FrameException( 'Parser widoku o nazwie ' . $parser . ' nie istnieje' );
    }
}